﻿namespace Beetle
{
    using System;

    public interface IByteConverter
    {
        byte[] GetBytes(bool value);
        byte[] GetBytes(byte value);
        byte[] GetBytes(char value);
        byte[] GetBytes(double value);
        byte[] GetBytes(short value);
        byte[] GetBytes(int value);
        byte[] GetBytes(long value);
        byte[] GetBytes(float value);
        byte[] GetBytes(ushort value);
        byte[] GetBytes(uint value);
        byte[] GetBytes(ulong value);
        bool ReadBool(BufferReader reader);
        byte ReadByte(BufferReader reader);
        char ReadChar(BufferReader reader);
        double ReadDouble(BufferReader reader);
        float ReadFloat(BufferReader reader);
        short ReadInt16(BufferReader reader);
        int ReadInt32(BufferReader reader);
        long ReadInt64(BufferReader reader);
        ushort ReadUInt16(BufferReader reader);
        uint ReadUInt32(BufferReader reader);
        ulong ReadUInt64(BufferReader reader);
    }
}

